home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
014a
/
vgakit34.zip
/
SVGAMODE.ASM
< prev
next >
Wrap
Assembly Source File
|
1990-05-04
|
2KB
|
108 lines
include model.h
;
; VGAKIT Version 3.4
;
; Copyright 1988,89,90 John Bridges
; Free for use in commercial, shareware or freeware applications
;
; SVGAMODE.ASM
;
;
.data
extrn cirrus:byte,video7:byte,paradise:byte,tseng:byte
extrn tseng4:byte,chipstech:byte,trident:byte,ativga:byte
extrn everex:byte,aheada:byte,aheadb:byte,oaktech:byte
extrn vga512:byte
extrn curbk:word
public maxx,maxy
maxx dw ?
maxy dw ?
.code
public svgamode
public txtmode
public setmany
svgamode proc ;Set 640x480x256 on most SVGA cards
cmp [oaktech],0
jz noak
mov ax,53h
jmp short godo
noak: cmp [aheada],0
jnz skp
cmp [aheadb],0
jz noab
skp: mov ax,61h
jmp short godo
noab: cmp [everex],0
jz noev
mov ax,70h
mov bl,30h
jmp short godo
noev: cmp [ativga],0
jz noati
mov ax,62h
jmp short godo
noati: cmp [trident],0
jz notr
mov ax,5dh
jmp short godo
notr: cmp [video7],0
jz nov7
mov ax,6f05h
mov bl,67h
jmp short godo
nov7: cmp [chipstech],0
jz noct
mov ax,79h
jmp short godo
noct: cmp [paradise],0
jz nopd
mov ax,5fh
jmp short godo
nopd: cmp [tseng],0
jz nots
mov ax,2eh
godo: int 10h
mov [curbk],-1
mov [maxx],640 ;default width to 640 for now
mov ax,40h
mov es,ax
mov al,es:[84h] ;get height of screen
mul byte ptr es:[85h]
mov [maxy],ax
nots: ret
svgamode endp
txtmode proc
mov ax,3
int 10h
ret
txtmode endp
setmany proc palbuf:ptr byte,begcol:word,numcol:word
if @Datasize
les dx,[palbuf]
else
mov ax,ds
mov es,ax
mov dx,[palbuf]
endif
mov bx,[begcol]
mov cx,[numcol]
mov ax,1012h
int 10h
ret
setmany endp
end